package org.microsites.remote;

import java.util.List;

import org.microsites.domain.model.Entity;

public interface GenericRemote<T extends Entity> {

	public List<T> list();
	
	public List<T> sublist(Long id);
	
    public T load(Long id);

    public List<Entity> loadPath(Long id);

	public T edit(Long id);

	public void release(Long id);

	public void keep(Long id);

	public T create(T entity);
	
	public void update(T entity);
	
	public void remove(Long id);

	public List<String> autocomplete(String column, String pattern);
}
